package com.kfm.pm;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.InputMismatchException;

public class Demo03 {

    public static void main(String[] args)  {
//        String str = "202308-20";
//        try {
//            System.out.println(conversion(str));
//        } catch (Exception e) {
//            System.out.println(e.getMessage());
//            e.printStackTrace();
//        }
//        test();
        try {
            test02("");
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
    }

    // 抛出的时编译时异常，方法调用处必须处理，或者继续抛出
    public static Date conversion(String str) throws ParseException {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        return sdf.parse(str);
    }

    // 抛出运行时异常 方法调用处可以不用处理
    public static void test() throws ArithmeticException, InputMismatchException {
        System.out.println("test");
    }
    // 抛出的是运行是异常，可以不用处理，但是编译时异常，方法内要处理，或者抛出
    public static void test02(String str) {
        try {
            if (str == null || str.isEmpty()) {
//            throw new RuntimeException("字符串不能为空");
                throw new ParseException("字符串不能为空", 10);
            }
        } catch (ParseException e) {
            System.out.println(e.getMessage());
        }
    }
}
